﻿using System.Text.Json.Serialization;

namespace Sirius.Entity
{
    //接口权限对象
    public class APIPermission
    {
        //API 接口名，例如 /guilds/{guild_id}/members/{user_id}
        [JsonPropertyName("path")]
        public string Path { get; set; }

        //请求方法，例如GET
        [JsonPropertyName("method")]
        public string Method { get; set; }

        //API接口名称,例如 获取频道信
        [JsonPropertyName("desc")]
        public string Desc { get; set; }

        //授权状态，auth_stats 为1时已授权
        [JsonPropertyName("auth_status")]
        public int Auth_Status { get; set; }


    }

    //接口权限需求对象
    public class APIPermissionDemand
    {
        //申请接口权限的频道ID
        [JsonPropertyName("guild_id")]
        public string guild_Id { get; set; }

        //接口里权限需求授权链接发送的子频道ID
        [JsonPropertyName("channel_id")]
        public string channel_Id { get; set; }

        //权限接口唯一标识
        [JsonPropertyName("api_identify")]
        public APIPermissionDemandIdentify api_Identify { get; set; }

        //接口权限链接中的接口权限描述信息
        [JsonPropertyName("title")]
        public string Title { get; set; }

        //接口权限链接中的机器人可使用功能的描述信息

        [JsonPropertyName("desc")]
        public string Desc { get; set; }
    }

    //接口权限需求标识对象
    public class APIPermissionDemandIdentify
    {
        //API 接口名，例如 /guilds/{guild_id}/members/{user_id}
        [JsonPropertyName("path")]
        public string path { get; set; }

        //请求方法，例如 GET
        [JsonPropertyName("method")]
        public string Method { get; set; }
    }
}